package com.cskaoyan.util;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;


/**
 * 日期格式化
 *
 * @author 李然
 * @date 2022/10/14
 */
public class DateFormatUtil {
    /**
     * 解析
     *
     * @param s 年代
     * @return {@link Date}
     */
    public static Date parse(String s) {
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date parse = null;
        try {
            parse = dateFormat.parse(s);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return parse;
    }

    /**
     * 格式
     *
     * @param date 日期
     * @return {@link String}
     */
    public static String format(Date date) {
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        return dateFormat.format(date);
    }

    /**
     * 日期戳
     *
     * @param date 日期
     * @return long
     * 时刻转成ms
     */
    public static long dateToStamp(Date date) {
        return date.getTime();
    }

    /**
     * 获取ms
     *
     * @param days 天
     * @return long
     * 时间间隔转成ms
     */
    public static long getMs(short days) {
        return days * 86400000L;
    }


    /**
     * 结束时间
     *
     * @param date 日期
     * @param i    我
     * @return {@link Date}
     */
    public static Date endTime(Date date, Short i) {

        long l = dateToStamp(date) + getMs(i);
        return new Date(l);
    }

    /**
     * 是开始
     *
     * @param date 日期
     * @return boolean
     */
    public static boolean isStart(Date date) {

        return dateToStamp(date) <= dateToStamp(new Date());
    }

}
